Methods For Presenting Online Advertising At A Social Network Site Based on Tracking User Actions At Other Websites

ABSTRACT

An advertising system generates customized advertising for social network members. The ads results are personalized based on member actions taken at third party websites, including content reviews, selections, etc.

RELATED APPLICATION DATA

The present application is a continuation of and claims priority to Ser.No. 11/855,934 filed Sep. 14, 2007, which in turn claims the benefitunder 35 U.S.C. 119(e) of the priority date of Provisional ApplicationSer. No. 60/826,677 filed Sep. 22, 2006; both of which are herebyincorporated by reference herein.

FIELD OF THE INVENTION

The present invention relates to advertising systems used in socialnetworking system.

BACKGROUND

Recommender systems are well known in the art. In one example, suchsystems can make recommendations for movie titles to a subscriber. Inother instances they can provide suggestions for book purchases, or eventelevision program viewing. Such algorithms are commonplace in a numberof Internet commerce environments, including at Amazon, CDNOW, andNetflix to name a few, as well as programming guide systems such asTiVO.

Traditionally recommender systems are used in environments in which acontent provider is attempting to provide new and interesting materialto subscribers, in the form of additional products and services. In somecases (see e.g., U.S. Pat. No. 6,493,703 incorporated by referenceherein) recommenders have been employed for the purpose of informingmembers of an online community of content and/or preferences of othermembers. Nonetheless the use of recommenders has not been extended fullyto such domains and other online areas, including social networks, whichcould benefit from such systems. Only recently for example haverecommenders been proposed for generating user to user recommendationsin a music related community. See e.g., US Publication No. 2007/0203790to Torrens, incorporated by reference herein. Similar systems whichrecommend content/users are described in U.S. Pat. No. 6,493,703 toKnight et al., also incorporated by reference herein. Multi-dimensionalrecommenders have also been recently introduced. For an example of suchsystems, please see U.S. Patent Publication No. 2004/0103092 to Tuzhilinet al. and an article entitled “Incorporating Contextual Information inRecommender Systems Using a Multidimensional Approach” to Adomavicius etal., both of which are hereby incorporated by reference herein. In suchsystems, however, the extra dimensionality arises from additionalcontent related to items which are nonetheless still traditionalcommerce items, such as movies.

SUMMARY OF THE INVENTION

An object of the present invention, therefore, is to reduce and/orovercome the aforementioned limitations of the prior art. A recommendersystem which evaluates multiple data sources is employed to generatemore accurate and relevant predictions concerning data items and otherusers within a community.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustration of a multi-dimensional recommender system ofthe present invention.

DETAILED DESCRIPTION

FIG. 1 illustrates an example of a preferred embodiment of amulti-dimensional recommender system 100. A user/item compiler anddatabase 110 includes a schema in which ratings for individual items byindividual users are identified in a typical matrix fashion well-knownin the art. The primary difference, in this instance, is that the itemsare not products/services (i.e., books, movies, etc.) as in the priorart, but instead represent more generalized concepts, such as a ratingidentified by a user for an author, a social network contact, aparticular message board or post, a particular blog or website, aparticular RSS Feed, etc., as shown by the data received from sources.

Explicit Endorsement Data Sources 120

As an example of an explicit data source 120, in a typical message boardapplication such as operated by Yahoo! (under the moniker Yahoo MessageBoards) or the Motley Fool, users are permitted to designate “favorite”authors, and/or to “recommend” posts written by particular individuals.In accordance with the present invention these designations of favoriteauthors and recommendations for posts are monitored, tabulated, and thentranslated into ratings for such authors/posts and compiled in adatabase under control of an item/user compiler module. The ratings willbe a function of the environment in which the information is collectedof course, so that a recommendation by person A for a post written byperson B can be scored as a simple 1 or 0. While current message boardsystems presently track these kinds of endorsements, it will beunderstood that the invention can be applied to any aspect of suchenvironments in which subscribers are allowed to endorse, rate, ordeclare an interest or preference for a certain author, post, subject,etc.

The purpose of using a recommender algorithm (either collaborativefilter or content filter as the case may require) would be of course torecommend additional authors, topics, or similar subject matter tomembers of such message boards based on their professed interests inother authors and topics. For example a first individual with favoriteauthors A, B, C may not realize that other individuals designating A, B,C as favorite authors also designate D and E as favorite authors, andthis information can be passed on to such first individual increase thepotential enjoyment of such site.

Similarly in other environments as data source a user's designation offavorite web-logs (blogs), favorite RSS feeds, etc. as evidenced bytheir inclusion in an RSS aggregator or as designated favorites within aweb browser, or by some other mechanism could be similarly tabulated tocreate a user-item matrix of ratings for such items. This can be used topass on recommendations for new blogs, RSS feeds, etc.

In some applications an e-commerce site includes social networkingfeatures whereby members link to each other explicitly as part ofgroups. For example in sites operated by Myspace, or Netflix, memberscan designate other members explicitly with the label friends. As withthe other data sources, these user-friend associations can be tabulatedinto a form suitable for use by a recommendation algorithm. Again, whilethese sites specifically designate individuals as friends, other sitesmay allow members to designate some other favorite item, such as animage, a website, a video, etc.

It should be apparent therefore that the item/user compiler database mayin fact be comprised of several different dedicated files unique to aparticular site or domain of users.

Implicit Endorsement Data Sources 125

In contrast to explicit data sources, the data from implicit datasources 125 includes materials which typically must undergo furtherprocessing to determine both the item and the associated rating. Thatis, in the case of a search result for example, the item may be one ofthe pages presented in the search result, or one or more conceptsderived from the content of such page. The rating may be based on anumber of invocations of such page, a length of time spent at such page,or any other well-known attention metric used to determine a person'sinterest in a particular website.

Other sources of implicit data can include ads selected by an individual(during an online session or from another electronic interface whichcollects and presents ad related data, such as a Tivo box or the like),audio/video content, posts, blogs, podcasts, articles, stories and thelike which are read and/or authored by the person. Those skilled in theart will appreciate that such monitorings could be done in any situationwhere a person's selections can be identified.

Natural Language Classifier 130

Regardless of the source of the implicit data, the invention uses anatural language classifier/mapper module 130 to translate the raw datainto one or more predefined concepts—representing the items in thisinstance—with reference to a topic/concept classification database 140.For example, a topic/concept may include such items as personalinterests/hobbies, music bands, company names, stock symbols, brandnames, foods, restaurants, movies, etc., depending on the intendedapplication. These are but examples of course and it will be understoodthat such topics/concepts could include almost anything.

The items for the recommender database 140 can be mapped onto thetopics/concepts either on a 1:1 basis, a 1:N basis, or an N:1 basis. Inother words, if an item in the recommender database 140 is designatedwith the label “Sony,” there may be an identical entry in thetopic/concept classification with such term. Semantic equivalents mayalso be used where appropriate. Similarly a single item “Sony” may beassociated with multiple topics/concepts, such as a reference to aparticular product or service offered by such company (for example Vaio)a stock symbol for Sony, a reference to a key employee/officer of Sony,and the like. Conversely some topics/concepts may also be mapped tomultiple items, so that a reference to Sony Vaio may be linked to suchitems as Sony and personal state of the art computers.

The natural language classifier/mapper 130 is preferably trained with atraining corpus 145 so that it can effectively learn the correctcorrelations between data and concepts. After training, the naturallanguage classifier/mapper 130 can recognize words/phrases within asearch page, ad, post, etc., and correlate them to one or moretopics/concepts. Thus if a document contains the word Dell, the NLclassifier can be taught to recognize such word as corresponding to suchconcepts as a particular brand name, a computer company, and the like.

The advantage of such approach, of course, is that documentsauthored/reviewed by individuals do not have to contain specific orexplicit references to the item in question. Thus the system understandsthat an individual reading articles about Porsches, Ferraris, etc, isprobably interested in high end sports cars, luxury items, etc. While NLclassifiers are well-known and have been used in other contexts such assearch engines and related indices, they do not appear to have been usedto date to assist in the identification and rating of items for arecommender.

Ratings

As alluded to earlier the ratings in the above types of applications canbe based on any convenient scale depending on the source of the data andthe intended use. Some designations may be rated or scaled higher thanothers, depending on their recency, relative use, etc. The weightingsagain can be based on system performance requirements, objectives, andother well-known parameters. Thus with all other things being equal,older designations may receive higher scores than more recentdesignations, so long as the former are still designated as active inthe user's day to day experience. So for example, after a predefinedperiod, the first designated favorite author for a particular individualmay receive a boosting to their rating if such author is still beingread by the individual. Similarly, “stale” endorsements may be reducedover time if they are not frequently used. The degree of activity may bebenchmarked to cause a desired result (i.e., endorsements receiving noactivity within N days may receive a maximum attenuation factor)monitored to attenuate the ratings.

Quantitatively, the ratings therefore can be a simple mathematicalrelationship of usage frequency and age of the endorsement. The ratingsmay also be affected by the context in which they are generated, or inwhich the recommendation is solicited, as noted in the Tuzhilinmaterials above. The ratings can be updated at any regular desiredinterval of time, such as on a daily, weekly, or other convenient basis.For example, one approach may use the product of (frequency of use*ageof the endorsement), with some normalization applied. This will resultin an increase in score for older and more frequently used items. Othertypes of algorithms will be apparent to those skilled in the art. Inthis respect the invention attempts to mimic the behavior of a learningnetwork which gives precedence to connections which are more stronglyconnected and reinforced regularly.

Recommendation Engine Module 115 Outputs

A recommendation engine module 115 thus generates outputs in aconventional fashion using a collaborative filtering algorithm, acontent based filtering algorithm, or some combination thereforedepending on the particular application and the data available in theitem/user database. The outputs can include:

1) predictions on how much particular users will like particular items;for example, in a message board application, an indication of a ratingat output 180 that a particular person would give to a specific post,specific author, specific topic, etc.;

2) recommendation outputs 170 on specific authors, topics, posts, etc.which a particular person may want to consider for review in theirperusings at such site; this data can be presented to a user in the formof individual entries, top x lists, etc.

3) an output to adjust, adapt or personalize search engine (not shown)results presented to a user in response to a query on a specificsubject. For example if a user performed a search at a site relating tovideo recorders, the result set typically includes a set of N distincthits. The information from the recommendation engine 115 may be used totailor the results more particularly to the user.

In a first instance, the user has a prior profile which can bedetermined and exploited from item/user database 110, so that the searchresults are modified accordingly. As an example, the user may haveexpressed a favorable interest, endorsement or inclination towards Sony.This data in turn could be used to optionally modify, bias or alter theN distinct hits to accommodate the prior experiences.

In a second instance, even if the user does not have a profile, thequery can be compared against items in the item/user database todetermine favored or highly rated articles. Thus, in the above example,any ratings for Sony, or other video recorder suppliers, could beevaluated to identify additional modifications to the search engineresults. In this manner a recommender can supplement the performance ofa search engine based on real world experiences and thus increase thechances of successful experiences by searchers.

To map search queries to items for the above enhancements, thetopic/concept classification database 140 can be consulted as needed.Again this may result in a number of item related entries being used tomodify the search results.

It should be apparent that the output could be used by a separaterecommender system, as well, to supplement an existing data set.

Advertising Module 150

An advertising module 150 can be used to provide relevant advertisingmaterial based on the content of predictions, recommendations and otheroutputs of the recommendation engine. As seen in FIG. 1, an interfaceroutine 153 permits third parties and site operators to enter well-knownadvertising campaign information, such as advertising copy/content,desired keywords, and other information well-known in the art. The adscan take any form suitable for presentation within an electronicinterface, and may include text and multi-media information (audio,video, graphics, etc.)

In prior art systems ads are correlated to search engine results, suchas in a system known as “Adwords” offered by Google. In suchapplications ads are presented to searchers based on one or more topicsidentified in a search query.

The present invention extends this concept to recommenders, so that adsare served in accordance with a topic determined from a recommendation.For example, on a message board application, if the system were todetermine that (based on prior ratings for certain topics) the usershould also be recommended to review content on a board devoted tovintage cars, the ads presented with such recommendation could betailored to content of such vintage car board, and/or to the specificcontent of the recommendation itself.

As seen in FIG. 1, the advertising stock 152 offered by third parties ismatched against one or more topics/concepts in the topic/conceptclassification database 140. The mapping of the advertising stock tosuch topics can again be done automatically by natural languageclassifier/mapper 130, or alternatively selected independently by thethird party/system site operator. In the latter case some oversight maybe necessary to prevent third parties from intentionally polluting therelevancy of ads by presenting them in inappropriate contexts.

An advertising engine 151 is invoked and cooperates with arecommendation engine 115 so that relevant ads are presented with anoutput of the latter. As noted above such ads may also be presented assuitable for inclusion with a modified set of search results for asearch engine. In this fashion an advertising system can be superimposedover the recommender system, so that relevant ads are presented at 160in response to, and in conjunction with, a recommendation, prediction,etc., either at the same time, or at a later time in the form of emails,alerts, printed copy or other suitable materials for consumerconsumption.

Applications

As alluded to earlier, the present invention can be used advantageouslyin a number of e-commerce applications, including:

-   -   Message boards: the invention can be employed to        predict/recommend other authors, posters, topics, etc., which        would be of interest to members;    -   Social networking: the invention can be employed to        predict/recommend other contacts, “friends,” topics, etc. which        a member of an online community may enjoy based on such member's        other friends, topics reviewed, etc. By measuring an adoption        rate between members for particular friends, or determining        which friends' interests are most often copied, the system can        even provide suggestions to specific members so that they send        invitations to other members predicted to be good candidates for        friends within the community.    -   RSS, Blogs, Podcasts, Ads: the invention can be employed to        predict/recommend other Ads, RSS feeds, Blogs and Podcasts to        individuals, based on adoptions/endorsements made by other        online users.

Furthermore other options include monitoring group behavior and treatingany such collection of individuals as a single entity for item/ratingpurposes. This aggregation can be used to recommend higher order logicalgroupings of individuals, particularly in social networkingapplications, to enhance the user experience.

That is, in conventional CF systems, individuals are automaticallyassigned to specific clusters based on a determination of a significantnumber of common interests/tastes. In the present invention theindividual self-selected groupings within social networks can be brokendown and treated as clusters so that comparisons can be made againstparticular user's interests, predilections, etc. Based on suchcomparisons groups can opt to extend invitations to new members whichthey would otherwise not notice or come into contact with. Converselynew members can be given some immediate insight into potentiallyfruitful social groups.

It will be understood by those skilled in the art that the above ismerely an example and that countless variations on the above can beimplemented in accordance with the present teachings. A number of otherconventional steps that would be included in a commercial applicationhave been omitted, as well, to better emphasize the present teachings.

It will be apparent to those skilled in the art that the modules of thepresent invention, including those illustrated in FIG. 1 can beimplemented using any one of many known programming languages suitablefor creating applications that can run on large scale computing systems,including servers connected to a network (such as the Internet). Thedetails of the specific implementation of the present invention willvary depending on the programming language(s) used to embody the aboveprinciples, and are not material to an understanding of the presentinvention. Furthermore, in some instances, a portion of the hardware andsoftware of FIG. 1 will be contained locally to a member's computingsystem, which can include a portable machine or a computing machine atthe users premises, such as a personal computer, a PDA, digital videorecorder, receiver, etc.

Furthermore it will be apparent to those skilled in the art that this isnot the entire set of software modules that can be used, or anexhaustive list of all operations executed by such modules. It isexpected, in fact, that other features will be added by system operatorsin accordance with customer preferences and/or system performancerequirements. Furthermore, while not explicitly shown or describedherein, the details of the various software routines, executable code,etc., required to effectuate the functionality discussed above in suchmodules are not material to the present invention, and may beimplemented in any number of ways known to those skilled in the art.

The above descriptions are intended as merely illustrative embodimentsof the proposed inventions. It is understood that the protectionafforded the present invention also comprehends and extends toembodiments different from those above, but which fall within the scopeof the present claims.

What is claimed is:
 1. A method of presenting advertising content to a user with a computing system comprising: (a) identifying first content reviewed by a user at a first website with the computing system; (b) identifying first advertising content presented to the user at said first website with the computing system; (c) processing and storing data relating to actions taken by the user concerning said first content and said first advertising content with the computing system to create a user set of topics and/or items associated with interests of the user; (d) identifying a set of user advertisements with the computing system that are correlated to said user set of topics and/or items of interest to the user identified at said first website and which can be presented in an interface at a second website; (e) processing a search query from the user at said second website directed to a first topic; (f) presenting a list of items in search results within said interface at said second website responsive to said search query; wherein at least some items in said list of items in said search results are included based on the user's actions made in step (c) prior to said search query concerning content related to said first topic; (g) presenting one or more of said set of user advertisements to the user at said second website including along with said list of items in said search results.
 2. The method of claim 1 wherein said first content is presented in response to a search query made to a first keyword by said user at said first website.
 3. The method of claim 1 wherein at least some advertisements taken from said set of one or more user advertisements are included in said advertising for said search results based on the user's actions made in step (c) prior to said search query concerning content related to said first topic.
 4. The method of claim 1 wherein at least some of said one or more of said set of user advertisements are based on keywords presented in said search query.
 5. The method of claim 1 wherein at least some of said one or more of said set of user advertisements are based on a recommender system prediction of content or items determined to be likely of interest to said user.
 6. The method of claim 1 wherein a topic is determined for keywords presented explicitly in said search query by matching said keywords to one or more mapped topic(s), and said set of user advertisements presented includes advertisements correlated to said topic(s).
 7. The method of claim 1 wherein a topic is determined implicitly from text postings made by said user by matching said text postings to one or more mapped topic(s), and said set of user advertisements presented includes advertisements correlated to said topic(s).
 8. The method of claim 1 wherein a topic is determined explicitly from item selections within an interface made by said user by matching said item selections to one or more mapped topic(s), and said set of user advertisements presented includes advertisements correlated to said topic.
 9. The method of claim 1 wherein a topic is determined implicitly from actions made by said user by matching said actions to one or more mapped topic(s), and said set of user advertisements presented includes advertisements correlated to said topic.
 10. The method of claim 1 wherein a topic is determined implicitly from content consumed by said user by matching said content to one or more mapped topic(s), and said set of user advertisements presented includes advertisements correlated to said topic.
 11. The method of claim 1 wherein semantic matching is performed at least during step (c).
 12. The method of claim 1 wherein at least some of said one or more of said set of user advertisements are selected based on said user belonging to a common self-selected group at a social networking site.
 13. The method of claim 1 further wherein portions of said one or more of said set of user advertisements are derived from content consumed by said user from a source of said first content.
 14. The method of claim 1 wherein at least some of said one or more of said set of user advertisements are presented on a topic based on a frequency of adoption by said user of content related to said topic.
 15. The method of claim 1 wherein at least some of said one or more of said set of user advertisements are presented on a topic based on a length of time of adoption by said user of content related to said topic.
 16. The method of claim 1 wherein said second website is a social networking site and said one or more of said set of user advertisements are presented to the user at said second website including along with a recommendation list members of said social networking site predicted to be adopted as friends by the user.
 17. The method of claim 1 wherein said one or more of said set of user advertisements are based on a user designation of a favorite website.
 18. The method of claim 1 wherein said one or more of said set of user advertisements are based on a prior user selection of second advertisements presented at the second website.
 19. A method of presenting advertising content to a user with a computing system comprising: (a) identifying first search content requested by a first user in a query made at a first website with the computing system; (b) identifying first advertising content presented to the first user at said first website with the computing system; (c) repeating steps (a) and (b) for a plurality of second users designated as social network friends by the first user; (d) processing and storing data relating to actions taken by the first user and plurality of second users concerning said first search content and said first advertising content with the computing system to create a user set of topics and/or items associated with interests of the user and said plurality of second users; (d) identifying a set of user advertisements with the computing system that are correlated to said user set of topics and/or items of interest to the first user and said plurality of second users identified at said first website and which can be presented in an interface at a second website for said social network; (e) processing a search query from the first user at said second website directed to a first topic; (f) presenting a list of items in search results within said interface at said second website responsive to said search query; wherein at least some items in said list of items in said search results are included based on the first user's and plurality of second user actions made in step (c) prior to said search query concerning content related to said first topic; (g) presenting one or more of said set of user advertisements to the first user at said second website along with said list of items in said search results. 